package org.farec.tcc.dao;

import java.util.List;

import org.farec.tcc.modelo.Cilindrada;
import org.hibernate.Query;
import org.hibernate.Session;

public class CilindradaDao {
	
	private Session session;
	
	public CilindradaDao(Session session)
	{
		this.session=session;
	}
	
	public void adiciona(Cilindrada cilindrada)
	{
		session.save(cilindrada);
		session.getTransaction().commit();
	}
	
	public List<Cilindrada> lista()
	{
		return session.createCriteria(Cilindrada.class).list();
	}
	
	public Cilindrada exibe(Cilindrada cilindrada)
	{
		Cilindrada encontradoCilindrada = (Cilindrada) session.load(Cilindrada.class, cilindrada.getId());
		return encontradoCilindrada;
	}
	
	public void altera(Cilindrada cilindrada)
	{
		session.update(cilindrada);
		session.getTransaction().commit();
	}
	
	public void remover(Cilindrada cilindrada)
	{
		session.delete(cilindrada);
		session.getTransaction().commit();
	}

	public Cilindrada buscaCodigo(String nome)
	{
		// TODO Auto-generated method stub
		
		Query query = this.session.createQuery("from Cilindrada " +
				"where nome = :nome");
				query.setString("nome", nome);
				
		Cilindrada encontradaCilindrada = (Cilindrada) query.uniqueResult();
		return encontradaCilindrada;
		
	}

}
